package com.seckill.item.service;

import com.seckill.item.domian.dto.CategoryAddDTO;
import com.seckill.item.domian.dto.CategoryDisableOrEnableDTO;
import com.seckill.item.domian.dto.CategoryListDTO;
import com.seckill.item.domian.dto.CategoryUpdateDTO;
import com.seckill.item.domian.po.Category;
import com.baomidou.mybatisplus.extension.service.IService;
import com.seckill.item.domian.vo.CategoryInfoVO;
import com.seckill.item.domian.vo.CategoryVO;
import com.seckill.item.domian.vo.SimpleCategoryVO;

import java.util.List;

/**
 * <p>
 * 商品分类表 服务类
 * </p>
 *
 * @author zsc
 * @since 2025-05-17
 */
public interface ICategoryService extends IService<Category> {

    CategoryInfoVO get(Long id);

    List<CategoryVO> list(CategoryListDTO categoryListDTO);

    void add(CategoryAddDTO categoryAddDTO);

    void delete(Long id);

    void disableOrEnable(CategoryDisableOrEnableDTO categoryDisableOrEnableDTO);

    void update(CategoryUpdateDTO categoryUpdateDTO);

    List<SimpleCategoryVO> all(Boolean admin);

    List<CategoryVO> allOfOneLevel();
}
